package org.jeecg.modules.demo.oms.entity;

import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

/**
 * @Description: 订单表
 * @Author: jeecg-boot
 * @Date:   2020-03-01
 * @Version: V1.0
 */
@Data
@TableName("oms_order")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="oms_order对象", description="订单表")
public class OmsOrder {
    
	/**订单id*/
	@TableId(type = IdType.ID_WORKER_STR)
    @ApiModelProperty(value = "订单id")
	private java.lang.Integer id;
	/**memberId*/
	@Excel(name = "memberId", width = 15)
    @ApiModelProperty(value = "memberId")
	private java.lang.Integer memberId;
	/**couponId*/
	@Excel(name = "couponId", width = 15)
    @ApiModelProperty(value = "couponId")
	private java.lang.Integer couponId;
	/**订单编号*/
	@Excel(name = "订单编号", width = 15)
    @ApiModelProperty(value = "订单编号")
	private java.lang.String orderSn;
	/**提交时间*/
	@Excel(name = "提交时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "提交时间")
	private java.util.Date createTime;
	/**用户帐号*/
	@Excel(name = "用户帐号", width = 15)
    @ApiModelProperty(value = "用户帐号")
	private java.lang.String memberUsername;
	/**订单总金额*/
	@Excel(name = "订单总金额", width = 15)
    @ApiModelProperty(value = "订单总金额")
	private java.math.BigDecimal totalAmount;
	/**应付金额（实际支付金额）*/
	@Excel(name = "应付金额（实际支付金额）", width = 15)
    @ApiModelProperty(value = "应付金额（实际支付金额）")
	private java.math.BigDecimal payAmount;
	/**运费金额*/
	@Excel(name = "运费金额", width = 15)
    @ApiModelProperty(value = "运费金额")
	private java.math.BigDecimal freightAmount;
	/**促销优化金额（促销价、满减、阶梯价）*/
	@Excel(name = "促销优化金额（促销价、满减、阶梯价）", width = 15)
    @ApiModelProperty(value = "促销优化金额（促销价、满减、阶梯价）")
	private java.math.BigDecimal promotionAmount;
	/**积分抵扣金额*/
	@Excel(name = "积分抵扣金额", width = 15)
    @ApiModelProperty(value = "积分抵扣金额")
	private java.math.BigDecimal integrationAmount;
	/**优惠券抵扣金额*/
	@Excel(name = "优惠券抵扣金额", width = 15)
    @ApiModelProperty(value = "优惠券抵扣金额")
	private java.math.BigDecimal couponAmount;
	/**管理员后台调整订单使用的折扣金额*/
	@Excel(name = "管理员后台调整订单使用的折扣金额", width = 15)
    @ApiModelProperty(value = "管理员后台调整订单使用的折扣金额")
	private java.math.BigDecimal discountAmount;
	/**支付方式：0->未支付；1->支付宝；2->微信*/
	@Excel(name = "支付方式：0->未支付；1->支付宝；2->微信", width = 15)
    @ApiModelProperty(value = "支付方式：0->未支付；1->支付宝；2->微信")
	private java.lang.Integer payType;
	/**订单来源：0->PC订单；1->app订单*/
	@Excel(name = "订单来源：0->PC订单；1->app订单", width = 15)
    @ApiModelProperty(value = "订单来源：0->PC订单；1->app订单")
	private java.lang.Integer sourceType;
	/**订单状态：0->待付款；1->待发货；2->已发货；3->已完成；4->已关闭；5->无效订单*/
	@Excel(name = "订单状态：0->待付款；1->待发货；2->已发货；3->已完成；4->已关闭；5->无效订单", width = 15)
    @ApiModelProperty(value = "订单状态：0->待付款；1->待发货；2->已发货；3->已完成；4->已关闭；5->无效订单")
	private java.lang.Integer status;
	/**订单类型：0->正常订单；1->秒杀订单*/
	@Excel(name = "订单类型：0->正常订单；1->秒杀订单", width = 15)
    @ApiModelProperty(value = "订单类型：0->正常订单；1->秒杀订单")
	private java.lang.Integer orderType;
	/**物流公司(配送方式)*/
	@Excel(name = "物流公司(配送方式)", width = 15)
    @ApiModelProperty(value = "物流公司(配送方式)")
	private java.lang.String deliveryCompany;
	/**物流单号*/
	@Excel(name = "物流单号", width = 15)
    @ApiModelProperty(value = "物流单号")
	private java.lang.String deliverySn;
	/**自动确认时间（天）*/
	@Excel(name = "自动确认时间（天）", width = 15)
    @ApiModelProperty(value = "自动确认时间（天）")
	private java.lang.Integer autoConfirmDay;
	/**可以获得的积分*/
	@Excel(name = "可以获得的积分", width = 15)
    @ApiModelProperty(value = "可以获得的积分")
	private java.lang.Integer integration;
	/**可以活动的成长值*/
	@Excel(name = "可以活动的成长值", width = 15)
    @ApiModelProperty(value = "可以活动的成长值")
	private java.lang.Integer growth;
	/**活动信息*/
	@Excel(name = "活动信息", width = 15)
    @ApiModelProperty(value = "活动信息")
	private java.lang.String promotionInfo;
	/**发票类型：0->不开发票；1->电子发票；2->纸质发票*/
	@Excel(name = "发票类型：0->不开发票；1->电子发票；2->纸质发票", width = 15)
    @ApiModelProperty(value = "发票类型：0->不开发票；1->电子发票；2->纸质发票")
	private java.lang.Integer billType;
	/**发票抬头*/
	@Excel(name = "发票抬头", width = 15)
    @ApiModelProperty(value = "发票抬头")
	private java.lang.String billHeader;
	/**发票内容*/
	@Excel(name = "发票内容", width = 15)
    @ApiModelProperty(value = "发票内容")
	private java.lang.String billContent;
	/**收票人电话*/
	@Excel(name = "收票人电话", width = 15)
    @ApiModelProperty(value = "收票人电话")
	private java.lang.String billReceiverPhone;
	/**收票人邮箱*/
	@Excel(name = "收票人邮箱", width = 15)
    @ApiModelProperty(value = "收票人邮箱")
	private java.lang.String billReceiverEmail;
	/**收货人姓名*/
	@Excel(name = "收货人姓名", width = 15)
    @ApiModelProperty(value = "收货人姓名")
	private java.lang.String receiverName;
	/**收货人电话*/
	@Excel(name = "收货人电话", width = 15)
    @ApiModelProperty(value = "收货人电话")
	private java.lang.String receiverPhone;
	/**收货人邮编*/
	@Excel(name = "收货人邮编", width = 15)
    @ApiModelProperty(value = "收货人邮编")
	private java.lang.String receiverPostCode;
	/**省份/直辖市*/
	@Excel(name = "省份/直辖市", width = 15)
    @ApiModelProperty(value = "省份/直辖市")
	private java.lang.String receiverProvince;
	/**城市*/
	@Excel(name = "城市", width = 15)
    @ApiModelProperty(value = "城市")
	private java.lang.String receiverCity;
	/**区*/
	@Excel(name = "区", width = 15)
    @ApiModelProperty(value = "区")
	private java.lang.String receiverRegion;
	/**详细地址*/
	@Excel(name = "详细地址", width = 15)
    @ApiModelProperty(value = "详细地址")
	private java.lang.String receiverDetailAddress;
	/**订单备注*/
	@Excel(name = "订单备注", width = 15)
    @ApiModelProperty(value = "订单备注")
	private java.lang.String note;
	/**确认收货状态：0->未确认；1->已确认*/
	@Excel(name = "确认收货状态：0->未确认；1->已确认", width = 15)
    @ApiModelProperty(value = "确认收货状态：0->未确认；1->已确认")
	private java.lang.Integer confirmStatus;
	/**删除状态：0->未删除；1->已删除*/
	@Excel(name = "删除状态：0->未删除；1->已删除", width = 15)
    @ApiModelProperty(value = "删除状态：0->未删除；1->已删除")
	private java.lang.Integer deleteStatus;
	/**下单时使用的积分*/
	@Excel(name = "下单时使用的积分", width = 15)
    @ApiModelProperty(value = "下单时使用的积分")
	private java.lang.Integer useIntegration;
	/**支付时间*/
	@Excel(name = "支付时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "支付时间")
	private java.util.Date paymentTime;
	/**发货时间*/
	@Excel(name = "发货时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "发货时间")
	private java.util.Date deliveryTime;
	/**确认收货时间*/
	@Excel(name = "确认收货时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "确认收货时间")
	private java.util.Date receiveTime;
	/**评价时间*/
	@Excel(name = "评价时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "评价时间")
	private java.util.Date commentTime;
	/**修改时间*/
	@Excel(name = "修改时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
	private java.util.Date modifyTime;
	/**prepayId*/
	@Excel(name = "prepayId", width = 15)
    @ApiModelProperty(value = "prepayId")
	private java.lang.String prepayId;
	/**supplyId*/
	@Excel(name = "supplyId", width = 15)
    @ApiModelProperty(value = "supplyId")
	private java.lang.Integer supplyId;
	/**goodsId*/
	@Excel(name = "goodsId", width = 15)
    @ApiModelProperty(value = "goodsId")
	private java.lang.Integer goodsId;
	/**goodsName*/
	@Excel(name = "goodsName", width = 15)
    @ApiModelProperty(value = "goodsName")
	private java.lang.String goodsName;
	/**schoolId*/
	@Excel(name = "schoolId", width = 15)
    @ApiModelProperty(value = "schoolId")
	private java.lang.Integer schoolId;
	/**所属店铺*/
	@Excel(name = "所属店铺", width = 15)
    @ApiModelProperty(value = "所属店铺")
	private java.lang.Integer storeId;
	/**receiverId*/
	@Excel(name = "receiverId", width = 15)
    @ApiModelProperty(value = "receiverId")
	private java.lang.Integer receiverId;
	/**groupId*/
	@Excel(name = "groupId", width = 15)
    @ApiModelProperty(value = "groupId")
	private java.lang.Integer groupId;
	/**是否开发票 1=不发票 2=个人发票 3=公司发票*/
	@Excel(name = "是否开发票 1=不发票 2=个人发票 3=公司发票", width = 15)
    @ApiModelProperty(value = "是否开发票 1=不发票 2=个人发票 3=公司发票")
	private java.lang.Integer taxType;
	/**发票内容*/
	@Excel(name = "发票内容", width = 15)
    @ApiModelProperty(value = "发票内容")
	private java.lang.String taxContent;
	/**税号*/
	@Excel(name = "税号", width = 15)
    @ApiModelProperty(value = "税号")
	private java.lang.String taxCode;
	/**发票抬头*/
	@Excel(name = "发票抬头", width = 15)
    @ApiModelProperty(value = "发票抬头")
	private java.lang.String taxTitle;
	/**是否评论，1未评论，2已评论*/
	@Excel(name = "是否评论，1未评论，2已评论", width = 15)
    @ApiModelProperty(value = "是否评论，1未评论，2已评论")
	private java.lang.Integer isComment;
	/**storeName*/
	@Excel(name = "storeName", width = 15)
    @ApiModelProperty(value = "storeName")
	private java.lang.String storeName;
	/**pid*/
	@Excel(name = "pid", width = 15)
    @ApiModelProperty(value = "pid")
	private java.lang.Integer pid;
}
